package com.core.ingenium.model;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;


@Entity
@NamedQueries
({ 
    @NamedQuery(name = "UsuarioCarrera.findAll", query = "select o from UsuarioCarrera o"), 
    @NamedQuery(name = "UsuarioCarrera.findByUsuarioId", query = "select o from UsuarioCarrera o where o.usuario.id = :pid") 
})
@Table(name = "\"usuariocarrera\"")
public class UsuarioCarrera implements Serializable {
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    @Column(name = "id", nullable = false)
    private int id;

    @ManyToOne
    @JoinColumn(name = "carrera")
    private Carrera carrera;
    
    @ManyToOne
    @JoinColumn(name = "usuario")
    private Usuario usuario;
    
    public UsuarioCarrera() {
    }

    public UsuarioCarrera(Carrera carrera, int id, Usuario usuario) {
        this.carrera = carrera;
        this.id = id;
        this.usuario = usuario;
    }


    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }


    public void setCarrera(Carrera carrera) {
        this.carrera = carrera;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public Carrera getCarrera() {
        return carrera;
    }

    public Usuario getUsuario() {
        return usuario;
    }
}
